Jump To:
Technical Notes provide late breaking information about new Apple technologies and supplementary documentation discussing some of the more complex issues related to programming for the Mac OS.

Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Date
CD-ROM Driver Calls (HTML) (PDF)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
Accessibility 2000-08-14
About the Keynote XML File Format (APXL Schema) (HTML) (PDF)
TN2067: Describes the Keynote XML file format schema for developers creating or modifying Keynote presentations programmatically.
Apple Applications 2003-02-12
Apple Image Capture Camera Module changes for Mac OS X Update 10.1.3 (HTML) (PDF) ()
TN2040: Changes to the Apple Image Capture camera modules for Mac OS X Update 10.1.3.
Apple Applications 2002-04-16
Browser Plugins in Mac OS X (HTML) (PDF) ()
TN2020: Describes the format of web browser plugins for Mac OS X.
Apple Applications 2001-05-31
Deconstructing A Keynote Document: Part One - Slides (HTML) (PDF)
TN2073: Provides a Keynote XML file format overview; details the XML, showing slide, text and graphics functionality.
Apple Applications 2003-05-20
Extending and Controlling Sherlock (HTML) (PDF) ()
TN1141: Discusses features of Sherlock 2, including additions to the Internet Search Plug-in language and Applescript commands.
Apple Applications 2000-08-14
iTunes Visual Plug-ins (HTML) (PDF) ()
TN2016: Describes the APIs used by iTunes and its Visual plug-ins to communicate back and forth.
Apple Applications 2001-06-26
iTunes Visual Plug-ins for Windows (HTML) (PDF)
TN2098: Creating visual plug-ins for iTunes Windows 4.1 and later.
Apple Applications 2003-10-17
Sherlock's Find By Content Library (HTML) (PDF) ()
TN1180: A description of routines provided by Sherlock's Find by Content library.
Apple Applications 1999-10-01
AEBuild*, AEPrint* and Friends (HTML) (PDF) ()
TN2045: Describes the AEBuild* and AEPrint* family of routines.
AppleScript 2002-03-21
do shell script in AppleScript (HTML) (PDF) ()
TN2065: Frequently Asked Questions about the AppleScript "do shell script" command.
AppleScript 2003-01-27
The Enhanced Print Apple Event (HTML)
TN2082: Describes an enhancement to the print Apple event that gives developers more control over scripted printing.
AppleScript 2003-12-09
Native Scripting Additions (HTML) (PDF) ()
TN1164: Talks about how to create AppleScript scripting additions (OSAX) for Mac OS X.
AppleScript 2004-04-26
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
AppleScript 2004-03-01
AEBuild*, AEPrint* and Friends (HTML) (PDF) ()
TN2045: Describes the AEBuild* and AEPrint* family of routines.
Carbon 2002-03-21
AEStream and Friends (HTML) (PDF) ()
TN2046: Describes the AEStream family of routines.
Carbon 2002-03-29
Authorization for Everyone (HTML)
TN2095: Describes applications of Authorization Services beyond simple privilege requesting.
Carbon 2003-10-23
Background-Only Applications (HTML) (PDF) ()
TN1070: Describes issues and implementation strategies for creating Background-Only Applications.
Carbon 2000-08-14
Browser Plugins in Mac OS X (HTML) (PDF) ()
TN2020: Describes the format of web browser plugins for Mac OS X.
Carbon 2001-05-31
The CGDirectPalette API (HTML) (PDF) ()
TN2008: Provides a reference for the CGDirectPalette API on Mac OS X
Carbon 2000-11-08
Checklist for Building Applications and Extensions (HTML) (PDF) ()
TN1126: Summarizes the different items which you need to include to build a good, well-behaved Macintosh product.
Carbon 2000-08-14
Creating NetBoot Server-Friendly Applications (HTML) (PDF) ()
TN1151: Guidelines to ensure applications are able to work correctly in a NetBoot environment.
Carbon 2000-08-01
The Death of typeFSSpec: moving along to typeFileURL (HTML) (PDF) ()
TN2022: Discusses the typeFileURL format and using it to pass file references between applications in Mac OS X.
Carbon 2001-06-07
Dialog Manager Helper Functions (HTML) (PDF) ()
TN1148: Discusses Dialog Manager calls available since System 7.0 that minimize work in managing dialogs.
Carbon 2000-08-14
Digital CD Audio (HTML) (PDF) ()
TN1187: Describes digital audio on the Macintosh.
Carbon 2000-04-01
The Enhanced Print Apple Event (HTML)
TN2082: Describes an enhancement to the print Apple event that gives developers more control over scripted printing.
Carbon 2003-12-09
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (PDF) ()
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Carbon 2003-02-18
Exclusive File Access in Mac OS X (HTML) (PDF) ()
TN2037: Covers exclusive file access In Mac OS X
Carbon 2002-05-01
FCBs, Now and Forever (HTML) (PDF) ()
TN1184: MacOS 9.0 changes the format of the FileControlBlock (FCB) table significantly. How to access FCB information.
Carbon 1999-10-01
File Manager File Handling Q&As (HTML) (PDF)
FL515: Contains an archive of Q&As related to the Mac OS File Manager.
Carbon 2000-08-14
File Manager Performance and Caching (HTML) (PDF)
FL16: Discusses traditional Mac OS file system input/output performance issues and the File Manager's volume cache.
Carbon 2000-09-01
The Font Panel for Carbon API (HTML) (PDF) ()
TN2058: The API to display and interact with the Font Panel from Carbon applications on Mac OS X.
Carbon 2002-09-05
GDB for MacsBug Veterans (HTML) (PDF)
TN2030: Translate your experience with MacsBug into a working knowledge of the GNU source-level debugger (GDB).
Carbon 2001-10-18
Gestalt Manager Q&As (HTML) (PDF)
Deprecated - OS505: Describes methods utilizing the Gestalt Manager for determining whether a Macintosh is a U.S. machine.
Carbon 1992-12-01
Glyph Access Protocol (HTML) ()
TN2079: How to support unencoded glyphs using the TSM, ATSUI and Cocoa.
Carbon 2003-05-06
Guide to Creating Kiosks on Mac OS X (HTML) (PDF) ()
TN2062: Discusses techniques used in creating applications which require kiosk-like functionality on Mac OS X.
Carbon 2003-02-24
HFS Plus Volume Format (HTML) (PDF) ()
TN1150: Describes the physical layout of an HFS Plus volume.
Carbon 2004-03-05
HIView APIs vs. Control Manager APIs (HTML)
TN2074: Provides some clarification on the similar APIs and similar behaviors found in the HIView and Control Managers.
Carbon 2003-10-29
How To Be a Good Multiple Users Citizen (HTML) (PDF) ()
TN1186: Documents the Mac OS 9 Multiple Users technology and gives some useful code snippets.
Carbon 2000-06-01
How to use the ATSUI Low Level APIs to get glyph outlines (HTML) (PDF) ()
TN2033: Covers the ATSUI low-level APIs.
Carbon 2001-11-26
In Search of Missing Links (HTML) (PDF) ()
TN1127: Demonstrates how to write CFM glue code which can call classic 68K A-Trap routines.
Carbon 1998-05-01
Locating Application Support Files under Mac OS X (HTML) (PDF) ()
TN2015: Describes different methods for an application to determine its location.
Carbon 2001-03-27
Locking and Unlocking Handles (HTML) (PDF) ()
Deprecated - TN1122: Explains Memory Manager handles: locking, unlocking, and preserving a handle's state.
Carbon 1998-02-01
Mac OS X 10.2 (HTML) (PDF)
TN2053: Describes software development-related changes provided in system software update Mac OS X 10.2.
Carbon 2002-09-04
Mac OS X 10.3 Navigation Services Changes (HTML) ()
TN2105: Explains Navigation Services changes in Mac OS X 10.3 Panther
Carbon 2004-01-30
Mac OS X QuickDraw Performance (HTML) (PDF) ()
TN2051: Some of the trouble spots in the Mac OS X windowing system and how to avoid them.
Carbon 2003-02-13
Mac OS X: v10.1.1 - v10.1.3 (HTML) (PDF)
TN2043: Describes changes provided by system software updates 10.1.1 through 10.1.3.
Carbon 2002-03-06
Migrating to FSRefs & long Unicode names from FSSpecs (HTML) ()
TN2078: Answers and coding techniques to commonly asked questions about adopting FSRefs and long file names.
Carbon 2003-05-06
Moving Your Code to Mac OS X (HTML) (PDF) ()
TN2003: Talks about considerations for moving older Mac OS 9 applications to Mac OS X.
Carbon 2000-10-05
MP-Safe Routines (HTML) (PDF)
TN2006: Lists all routines callable from MP tasks under Multiprocessing Services 2.0 and higher.
Carbon 2000-12-21
Native Scripting Additions (HTML) (PDF) ()
TN1164: Talks about how to create AppleScript scripting additions (OSAX) for Mac OS X.
Carbon 2004-04-26
The Notification Manager: Problems & Fixes (HTML) (PDF)
TN1026: Describes issues with the Notification Manager 'activate' and 'update' events.
Carbon 1996-02-01
Observing Process Lifetimes Without Polling (HTML) (PDF)
TN2050: Shows a variety of methods to determine process lifetimes without polling.
Carbon 2002-07-01
On Drag Manager Additions (Release 1.1) (HTML) (PDF)
TN1043: Explains how to take advantage of the new Drag Manager features, including the translucent dragging.
Carbon 2000-08-14
On Launching an App with a Document (HTML) (PDF) ()
TN1002: Explains how to programatically launch an application and then tell it to open a document.
Carbon 2000-07-01
Open Transport STREAMS FAQ (HTML) (PDF)
Deprecated - TN1117: Decribes writing STREAMS modules and drivers for use with Open Transport.
Carbon 1997-12-01
Opening Resource Files Twice Considered Hard? (HTML) (PDF) ()
TN1120: Describes the behavior of FSpOpenResFile when the resource file is already open, and how to avoid problems.
Carbon 1998-01-01
Pascal to C: PROCEDURE Parameters (HTML) (PDF)
Deprecated - PT31: Nested procedures and PROCEDURE parameters in Pascal when converting them into C or C++.
Carbon 1990-02-01
'pdat' specification (HTML) (PDF) ()
TN2049: Describes 'pdat' resource printer vendors must include in their drivers to support CarbonLib printing.
Carbon 2002-04-22
Pending Update Perils (HTML) (PDF) ()
Deprecated - TN1147: Discusses potential problems when pending update events for windows behind modal dialogs are not serviced.
Carbon 2000-08-14
The 'plst' Resource (HTML) (PDF) ()
TN2013: Describes the 'plst' resource for Carbon-based applications.
Carbon 2002-02-07
Power Manager 2.0 (HTML) (PDF) ()
TN1190: Describes the Macintosh Power Manager 2.0.
Carbon 2000-08-14
PowerPC G5 Performance Primer (HTML) ()
TN2087: Offers a high-level overview of how to maximize performance on G5 Macs.
Carbon 2003-09-03
The Preferences Problem (HTML) (PDF) ()
Deprecated - TN1134: Outlines typical problems with preferences files and some of their solutions.
Carbon 1998-10-01
Programmatic Mounting of AppleShare Volumes (HTML) (PDF) ()
TN1111: Mount an AppleShare volume using PBVolumeMount. AFPVolMountInfo structure is defined along with the AFPXVolMountInfo structure.
Carbon 1997-10-01
Resolving Alias Files Quietly (HTML) (PDF)
FL30: Describes how to resolve alias files on remote volumes without user interaction.
Carbon 1999-11-01
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
Carbon 2004-03-01
Searching Volumes - Solutions and Problems (HTML) (PDF)
Deprecated - FL31: Discusses searching volumes using PBCatSearch.
Carbon 1988-10-01
SndPlayDoubleBuffer and Carbon (HTML) (PDF) ()
TN1198: Removal of the SndPlayDoubleBuffer and other APIs from the Carbon API set and Carbon solutions.
Carbon 2002-06-12
Thread-safe programming in QuickTime (HTML)
TN2125: Discusses how to use QuickTime from background threads for applications and component developers.
Carbon 2004-10-08
Threading Architectures (HTML) (PDF) ()
TN2028: Describes the various threading APIs on Mac OS 9 and Mac OS X.
Carbon 2001-08-08
Tuning for G5: A Practical Guide (HTML) ()
TN2086: Explains how to get started tuning your application for the new Macintosh G5 architecture.
Carbon 2003-10-01
Understanding and Detecting OpenGL Functionality (HTML)
TN2080: Discusses OpenGL API design, and how to access the full power of hardware and software renderers.
Carbon 2003-12-29
Update: Borrowed AFP Sessions (HTML) (PDF) ()
TN1106: Shows how to borrow the session reference number of an AFP volume mounted by the Macintosh File System.
Carbon 2000-08-14
Using collection classes safely with multithreaded applications (HTML) (PDF) ()
TN2059: Describes some problems with and workarounds for using mutable collection classes in multithreaded applications.
Carbon 2002-09-10
Using Launch Services for discovering document binding and launching applications (HTML) (PDF) ()
TN2017: Interface to starting applications, opening documents either with a specific application, or using the default application.
Carbon 2001-04-17
Using the 3DMixer Audio Unit (HTML)
TN2112: Discusses how to use Core Audio's 3DMixer version 2.0
Carbon 2004-06-14
Using the Drag Manager to Interact with and Manipulate File System Entities (HTML) (PDF) ()
TN1085: Details the data flavors provided by the Drag Manager for interacting with and manipulating file system entities.
Carbon 1996-12-01
Version Territory (HTML) (PDF) ()
TN1132: Clarifies the format of data in the NumVersion structure used in a version ( 'vers') resource.
Carbon 2003-08-25
Version Territory (HTML)
Deprecated - OV12: Please see Technical Note 1132 - Version Territory.
Carbon 1988-04-01
Virtual Memory Application Compatibility (HTML) (PDF)
Deprecated - TN1094: Provides an introduction to how virtual memory works under Traditional Mac OS.
Carbon 1998-04-01
Weak-Linking to a Code Fragment Manager-based Shared Library (HTML) (PDF) ()
TN1083: Describes weak-linking to CFM shared libraries.
Carbon 1996-11-01
Working with Multiprocessing Services (HTML) (PDF) ()
TN1071: Discusses some techniques for use with Apple's Multiprocessing Services APIs.
Carbon 2000-08-14
You Want Permission to do What?!! (HTML) (PDF)
FL37: Provides an-depth discussion of the File Manager and AFP permission models.
Carbon 1999-04-01
The Enhanced Print Apple Event (HTML)
TN2082: Describes an enhancement to the print Apple event that gives developers more control over scripted printing.
Cocoa 2003-12-09
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (PDF) ()
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Cocoa 2003-02-18
Exclusive File Access in Mac OS X (HTML) (PDF) ()
TN2037: Covers exclusive file access In Mac OS X
Cocoa 2002-05-01
File Manager Performance and Caching (HTML) (PDF)
FL16: Discusses traditional Mac OS file system input/output performance issues and the File Manager's volume cache.
Cocoa 2000-09-01
Guide to Creating Kiosks on Mac OS X (HTML) (PDF) ()
TN2062: Discusses techniques used in creating applications which require kiosk-like functionality on Mac OS X.
Cocoa 2003-02-24
HFS Plus Volume Format (HTML) (PDF) ()
TN1150: Describes the physical layout of an HFS Plus volume.
Cocoa 2004-03-05
Mac OS X 10.2 (HTML) (PDF)
TN2053: Describes software development-related changes provided in system software update Mac OS X 10.2.
Cocoa 2002-09-04
Mac OS X: v10.1.1 - v10.1.3 (HTML) (PDF)
TN2043: Describes changes provided by system software updates 10.1.1 through 10.1.3.
Cocoa 2002-03-06
Observing Process Lifetimes Without Polling (HTML) (PDF)
TN2050: Shows a variety of methods to determine process lifetimes without polling.
Cocoa 2002-07-01
Resolving Alias Files Quietly (HTML) (PDF)
FL30: Describes how to resolve alias files on remote volumes without user interaction.
Cocoa 1999-11-01
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
Cocoa 2004-03-01
SimpleCocoaApp: An Overview (HTML) (PDF) ()
TN2005: A high level overview of the steps required to build a simple Cocoa application.
Cocoa 2000-10-25
Tagging Handle and Pointer Data References in QuickTime (HTML) (PDF)
TN1195: The use of data reference extensions used by QuickTime to tag handle and pointer data references.
Cocoa 2004-05-26
Thread-safe programming in QuickTime (HTML)
TN2125: Discusses how to use QuickTime from background threads for applications and component developers.
Cocoa 2004-10-08
Understanding and Detecting OpenGL Functionality (HTML)
TN2080: Discusses OpenGL API design, and how to access the full power of hardware and software renderers.
Cocoa 2003-12-29
Using collection classes safely with multithreaded applications (HTML) (PDF) ()
TN2059: Describes some problems with and workarounds for using mutable collection classes in multithreaded applications.
Cocoa 2002-09-10
Working Around Incorrect -needsToDrawRect: Behavior in Custom View Classes (HTML)
TN2107: Describes how to work around a bug in NSView's -needsToDrawRect: method.
Cocoa 2004-02-06
The Preferences Problem (HTML) (PDF) ()
Deprecated - TN1134: Outlines typical problems with preferences files and some of their solutions.
Core Foundation 1998-10-01
CD-ROM Driver Calls (HTML) (PDF)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
Darwin 2000-08-14
Driver Tuning on Panther or G5 (HTML) ()
TN2090: Describes potential issues when using drivers in Panther or later, or on a Power Macintosh G5.
Darwin 2003-06-24
GDB for MacsBug Veterans (HTML) (PDF)
TN2030: Translate your experience with MacsBug into a working knowledge of the GNU source-level debugger (GDB).
Darwin 2001-10-18
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Darwin 2004-11-12
Pascal to C: PROCEDURE Parameters (HTML) (PDF)
Deprecated - PT31: Nested procedures and PROCEDURE parameters in Pascal when converting them into C or C++.
Darwin 1990-02-01
Porting Command Line Unix Tools to Mac OS X (HTML) ()
TN2071: A general guide for Unix developers porting software to Mac OS X.
Darwin 2003-09-03
Understanding and Debugging Kernel Panics (HTML) (PDF) ()
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
Darwin 2002-11-11
ATA Device Software Guide Additions and Corrections (HTML) (PDF) ()
TN1098: Notes Errors and additions to ATA Device Software Guide and ATA Manager 4.0.
Device Drivers 1997-07-01
ATA Interface Modules (HTML) (PDF)
TN1192: Describes how to write device drivers for ATA host bus controllers, ie. ATA Interface Module.
Device Drivers 1999-12-01
CD-ROM Driver Calls (HTML) (PDF)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
Device Drivers 2000-08-14
Debugging Open Firmware Using Telnet (HTML) (PDF)
TN2004: Addresses debugging device's firmware using Ethernet and telnet protocol to a target machine running Open Firmware.
Device Drivers 2000-10-16
Digital CD Audio (HTML) (PDF) ()
TN1187: Describes digital audio on the Macintosh.
Device Drivers 2000-04-01
FireWire: DCL Programs Under Mac OS X (HTML) ()
TN2072: Describes the structure and creation of DCL programs under Mac OS X.
Device Drivers 2003-06-21
New Sound Input Driver Features (HTML) (PDF) ()
Deprecated - TN1124: Describes the visible features and changes, in Mac OS 8.1, for PCI sound input drivers.
Device Drivers 1998-04-01
Open Firmware Ethernet Debugging II: Telnet downloading (HTML) (PDF) ()
TN2023: Describes a method of debugging a device's firmware using Ethernet to connect a host machine and target machine.
Device Drivers 2001-10-30
Open Transport STREAMS FAQ (HTML) (PDF)
Deprecated - TN1117: Decribes writing STREAMS modules and drivers for use with Open Transport.
Device Drivers 1997-12-01
Power Management for Macintosh; getting started (HTML) ()
TN2075: Outlines available documentation and its location for power management on Mac OS X and OS 9.
Device Drivers 2003-05-30
Running files from a hard drive in Open Firmware (HTML) (PDF)
TN2001: Demonstrates editing, saving, and retrieving Open Firmware commands to a file on a Macintosh hard drive.
Device Drivers 2000-09-22
SndPlayDoubleBuffer and Carbon (HTML) (PDF) ()
TN1198: Removal of the SndPlayDoubleBuffer and other APIs from the Carbon API set and Carbon solutions.
Games 2002-06-12
Using the 3DMixer Audio Unit (HTML)
TN2112: Discusses how to use Core Audio's 3DMixer version 2.0
Games 2004-06-14
The CGDirectDisplay API (HTML) (PDF) ()
TN2007: Provides a reference for the CGDirectDisplay API on Mac OS X.
Graphics & Imaging 2000-11-08
ColorSync on Mac OS X (HTML) (PDF) ()
TN2035: Describes ColorSync, which is fundamentally integrated into Mac OS X.
Graphics & Imaging 2004-06-25
Data Fork Font Support in Mac OS 8.5 (HTML) (PDF) ()
TN1159: Describes support for data fork-housed TrueType and OpenType fonts added to Mac OS 8.5.
Graphics & Imaging 2000-08-14
The Font Panel for Carbon API (HTML) (PDF) ()
TN2058: The API to display and interact with the Font Panel from Carbon applications on Mac OS X.
Graphics & Imaging 2002-09-05
Importing animated GIFs (HTML) (PDF) ()
TN2018: Describes how to tell if a GIF file or dataref contains more than one frame.
Graphics & Imaging 2001-04-17
Insights on OpenGL (HTML) (PDF) ()
TN2014: Frequently Asked Questions regarding OpenGL and graphics on the Macintosh.
Graphics & Imaging 2001-03-26
The Mac OS X Font Manager (HTML) (PDF) ()
TN2024: Information on installing and accessing fonts programatically.
Graphics & Imaging 2001-07-11
Mac OS X QuickDraw Performance (HTML) (PDF) ()
TN2051: Some of the trouble spots in the Mac OS X windowing system and how to avoid them.
Graphics & Imaging 2003-02-13
New ColorSync 3.0 APIs (HTML) (PDF) ()
TN1185: APIs application can use to take advantage of new features available in ColorSync 3.0.
Graphics & Imaging 2000-08-14
OpenGL Performance Optimization : The Basics (HTML)
TN2093: This document describes some of the concepts and techniques for optimizing performance in OpenGL applications;
Graphics & Imaging 2004-12-01
Understanding and Detecting OpenGL Functionality (HTML)
TN2080: Discusses OpenGL API design, and how to access the full power of hardware and software renderers.
Graphics & Imaging 2003-12-29
What's New With ColorSync 2.6 (HTML) (PDF) ()
TN1160: Details the changes in ColorSync 2.6.
Graphics & Imaging 1999-04-01
ATA Device Software Guide Additions and Corrections (HTML) (PDF) ()
TN1098: Notes Errors and additions to ATA Device Software Guide and ATA Manager 4.0.
Hardware 1997-07-01
ATA Interface Modules (HTML) (PDF)
TN1192: Describes how to write device drivers for ATA host bus controllers, ie. ATA Interface Module.
Hardware 1999-12-01
Boot Blocks (HTML) (PDF)
Deprecated - DV03: Warns that Boot Block form and function will change and describes undocumented Boot Blocks features.
Hardware 1987-03-01
CD-ROM Driver Calls (HTML) (PDF)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
Hardware 2000-08-14
Dealing with PCI Expansion Chassis Problems (HTML) (PDF) ()
TN1135: Discusses solutions for compatibility issues between PCI cards and attached expansion chassis.
Hardware 1998-08-01
Debugging Open Firmware Using Telnet (HTML) (PDF)
TN2004: Addresses debugging device's firmware using Ethernet and telnet protocol to a target machine running Open Firmware.
Hardware 2000-10-16
Driver Tuning on Panther or G5 (HTML) ()
TN2090: Describes potential issues when using drivers in Panther or later, or on a Power Macintosh G5.
Hardware 2003-06-24
FireWire: DCL Programs Under Mac OS X (HTML) ()
TN2072: Describes the structure and creation of DCL programs under Mac OS X.
Hardware 2003-06-21
Fundamentals of Open Firmware, Part I: The User Interface (HTML) (PDF)
TN1061: Describes the Open Firmware User Interface, Forth and the Open Firmware language used in Apple products.
Hardware 1996-07-01
Fundamentals of Open Firmware, Part II: The Device Tree (HTML) (PDF)
TN1062: Describes the Open Firmware device tree.
Hardware 1996-09-01
Fundamentals of Open Firmware, Part III: Understanding PCI Expansion ROM Choices for Mac OS (HTML) (PDF)
TN1044: Recommended contents for PCI expansion ROMs, including a table of standard devices, properties and methods.
Hardware 2001-06-26
High-Speed SDRAM Design Considerations (HTML) (PDF) ()
TN1138: Illustrates certain issues with the design of high-speed SDRAM DIMM modules.
Hardware 1998-08-01
I/O Kit Power Controller (HTML) ()
TN2076: Describes code to include in a KEXT in order to register for power management events.
Hardware 2003-06-20
Interrupt-Safe Routines (HTML) (PDF) ()
TN1104: Dicusses Mac OS, "safe " routines to call at interrupt time.
Hardware 2000-11-08
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Hardware 2004-11-12
The Mac ROM Enters a New World (HTML) (PDF) ()
TN1167: Describes changes made to the Macintosh ROM since the introduction of the iMac.
Hardware 2000-08-14
Open Firmware Ethernet Debugging II: Telnet downloading (HTML) (PDF) ()
TN2023: Describes a method of debugging a device's firmware using Ethernet to connect a host machine and target machine.
Hardware 2001-10-30
Optimization Strategies for Mac OS (HTML) (PDF)
TN1174: Achieving the best possible performance in your applications.
Hardware 1999-09-01
PCI Expansion ROMs and You (HTML) (PDF)
TN2000: Demonstrates how to read an expansion ROM on a PCI card in Open Firmware.
Hardware 2000-08-01
Power Management for Macintosh; getting started (HTML) ()
TN2075: Outlines available documentation and its location for power management on Mac OS X and OS 9.
Hardware 2003-05-30
Power Manager 2.0 (HTML) (PDF) ()
TN1190: Describes the Macintosh Power Manager 2.0.
Hardware 2000-08-14
PowerBook HD Upgrades and SCSI disk mode Compatibility (HTML) (PDF) ()
TN1116: Describes potential drive upgrades and SCSI disk mode issues in PowerBook pre-G3 and pre-3400 models.
Hardware 1998-02-01
PowerPC G5 Performance Primer (HTML) ()
TN2087: Offers a high-level overview of how to maximize performance on G5 Macs.
Hardware 2003-09-03
Running files from a hard drive in Open Firmware (HTML) (PDF)
TN2001: Demonstrates editing, saving, and retrieving Open Firmware commands to a file on a Macintosh hard drive.
Hardware 2000-09-22
Unknown Sound Features (HTML) (PDF) ()
TN1108: Documents some obscure, but useful, features of the Sound Manager.
Hardware 1997-10-01
USB Printer Sharing Compatibility (HTML) (PDF)
TN1199: Describes how to make drivers compatible with USB Printer Sharing.
Hardware 2000-06-01
The Euro Currency Symbol (HTML) (PDF) ()
TN1140: The available information about Mac OS and Mac Mac OS X Server support for the Euro currency symbol.
Internationalization 2000-01-01
Glyph Access Protocol (HTML) ()
TN2079: How to support unencoded glyphs using the TSM, ATSUI and Cocoa.
Internationalization 2003-05-06
How to use the ATSUI Low Level APIs to get glyph outlines (HTML) (PDF) ()
TN2033: Covers the ATSUI low-level APIs.
Internationalization 2001-11-26
Installable Keyboard Layouts (HTML) (PDF) ()
TN2056: Explains how to define a Unicode keyboard via an XML text file.
Internationalization 2002-09-27
Multilingual Text Engine Frequently Asked Questions (HTML) (PDF) ()
TN2026: A list of frequently asked questions for the Multilingual Text Engine (MLTE).
Internationalization 2001-07-11
Applet Signing with MRJ and Javakey (HTML) (PDF) ()
Deprecated - TN1175: Procedures needed to sign jar files, install certificates, and successfully utilize a signed applet.
Java 2000-10-16
The Care And Feeding Of Runtime.exec (HTML) (PDF) ()
Deprecated - TN1168: JDK-1.1.x on Mac OS Classic describes MRJ 2.x's implementation of Runtime.exec.
Java 2000-08-14
Compatibility between JDirect 2 and JDirect 3 (HTML) (PDF)
Deprecated - TN2002: Changes in JDirect between MRJ 2.2 on MacOS 8/9 and the Java runtime on Mac OS X.
Java 2001-08-03
Debugging Java Code With MacsBug (HTML) (PDF) ()
Deprecated - TN1154: Shows how to Debug Mac OS Classic Java with MacsBug.
Java 2000-08-14
Don't println to a Socket (HTML) (PDF) ()
Deprecated - TN1157: Describes improper use of the "println" method when writing to connected to a Socket and alternative methodolgies.
Java 2000-08-14
How to structure your handleCheckUpdate callback (HTML) (PDF)
Deprecated - TN1193: JMFrameUpdate from its window-drawing code, and why it should also implement a checkUpdate callback.
Java 2000-08-14
How to write a JDBC Plugin (With Example) (HTML) (PDF) ()
TN2027: Describes the process of writing JDBC Adaptor plugins for WebObjects.
Java 2001-07-11
Identifying Java on Mac OS X (HTML)
TN2110: Discovering installed versions of J2SE, Mac OS X from Java code.
Java 2004-10-05
Introduction to MRJ Scripting with AppleScript for Java (HTML) (PDF) ()
Deprecated - TN1162: Introduction to MRJ Scripting with ApplesScript for Java
Java 2000-08-14
Java Runtime Properties for Mac OS X (HTML) (PDF) ()
Deprecated - TN2031: Runtime properties for use with Java 1.3.1 applications.
Java 2002-06-12
JNI Tips: Building Your Native-Method Libraries For MacOS (HTML) (PDF) ()
Deprecated - TN1155: Provides Native Method Library tips for Java Native Interface (JNI) on Mac OS
Java 2000-08-14
Scribbling Into AWT Components (HTML) (PDF) ()
Deprecated - TN1156: Describes how to draw into an AWT Component by means other than the Java AWT Graphics API.
Java 2000-08-14
Tailoring Java Applications for Mac OS X (HTML) (PDF) ()
Deprecated - TN2042: Tips and tricks for an optimal Macintosh experience in a Java application.
Java 2002-05-23
Thread-Safe Toolbox Access From MRJ (HTML) (PDF) ()
Deprecated - TN1153: Thread-Safe Toolbox access from MRJ on Mac OS Classic.
Java 2000-08-14
Background-Only Applications (HTML) (PDF) ()
TN1070: Describes issues and implementation strategies for creating Background-Only Applications.
Mac OS 9 & Earlier 2000-08-14
Boot Blocks (HTML) (PDF)
Deprecated - DV03: Warns that Boot Block form and function will change and describes undocumented Boot Blocks features.
Mac OS 9 & Earlier 1987-03-01
CD-ROM Driver Calls (HTML) (PDF)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
Mac OS 9 & Earlier 2000-08-14
Disabling Interrupts on the Traditional Mac OS (HTML) (PDF) ()
TN1137: Describes how to (and why you should not) disable interrupts on the traditional Mac OS.
Mac OS 9 & Earlier 1998-08-01
FireWire for Mac OS 9: An Overview (HTML)
TN2126: Overview of FireWire on Mac OS 9.
Mac OS 9 & Earlier 2004-09-17
JIS Keyboard Support in Mac OS 8 (HTML) (PDF) ()
TN1152: Describes the mechanism introduced in Mac OS 8 to support JIS (Japanese Industrial Standards) keyboards.
Mac OS 9 & Earlier 1999-02-01
Mac OS 8.1 (HTML) (PDF) ()
TN1121: Documents changes in Mac OS 8.1 that will, most likely, affect developers.
Mac OS 9 & Earlier 1998-01-01
Mac OS 9.0.4 (HTML) (PDF) ()
TN1194: An overview of new features and bug fixes presented in Mac OS 9.0.4.
Mac OS 9 & Earlier 2000-04-01
Unknown Sound Features (HTML) (PDF) ()
TN1108: Documents some obscure, but useful, features of the Sound Manager.
Mac OS 9 & Earlier 1997-10-01
Creating NetBoot Server-Friendly Applications (HTML) (PDF) ()
TN1151: Guidelines to ensure applications are able to work correctly in a NetBoot environment.
Mac OS X Server 2000-08-01
Device input using the HAL Output Audio Unit (HTML)
TN2091: How to get input from an audio device by using the HAL's Output Audio Unit.
Music & Audio 2004-08-23
Handling Audio Unit Events (HTML)
TN2104: This technote explains how to handle AudioUnit Events
Music & Audio 2004-02-16
SndPlayDoubleBuffer and Carbon (HTML) (PDF) ()
TN1198: Removal of the SndPlayDoubleBuffer and other APIs from the Carbon API set and Carbon solutions.
Music & Audio 2002-06-12
The System Sound APIs for Mac OS X 10.2, 10.3 and later (HTML)
TN2102: Discusses the System Sound APIs for correctly playing Alerts and User Interface Sound Effects
Music & Audio 2004-07-13
Using the 3DMixer Audio Unit (HTML)
TN2112: Discusses how to use Core Audio's 3DMixer version 2.0
Music & Audio 2004-06-14
AppleTalk Overview Q&As (HTML) (PDF)
Deprecated - NW520: AppleTalk overview Q&As (retired) covering nodes, versions, interrupt-safe routines, broadcasting, self-send packets, user/computer names
Networking 1990-10-01
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Networking 2004-11-12
Living in a Dynamic TCP/IP Environment (HTML) (PDF) ()
TN1145: Describes some of the intricacies of dealing with TCP/IP in a dynamic environment, such as Open Transport.
Networking 2002-08-27
Open Transport STREAMS FAQ (HTML) (PDF)
Deprecated - TN1117: Decribes writing STREAMS modules and drivers for use with Open Transport.
Networking 1997-12-01
Understanding Open Transport Asset Tracking (HTML) (PDF)
TN1173: Open Transport tracks assets, like memory and providers, which it allocates on your behalf.
Networking 2000-11-03
Uniquely Identifying a Mac OS Computer (HTML) (PDF) ()
TN1103: Describes techniques to distinguish between models of Mac OS computers.
Networking 1997-12-01
Update: Borrowed AFP Sessions (HTML) (PDF) ()
TN1106: Shows how to borrow the session reference number of an AFP volume mounted by the Macintosh File System.
Networking 2000-08-14
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (PDF) ()
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Performance 2003-02-18
GDB for MacsBug Veterans (HTML) (PDF)
TN2030: Translate your experience with MacsBug into a working knowledge of the GNU source-level debugger (GDB).
Performance 2001-10-18
Mac OS X 10.2 (HTML) (PDF)
TN2053: Describes software development-related changes provided in system software update Mac OS X 10.2.
Performance 2002-09-04
Mac OS X: v10.1.1 - v10.1.3 (HTML) (PDF)
TN2043: Describes changes provided by system software updates 10.1.1 through 10.1.3.
Performance 2002-03-06
Optimization Strategies for Mac OS (HTML) (PDF)
TN1174: Achieving the best possible performance in your applications.
Performance 1999-09-01
Using the 3DMixer Audio Unit (HTML)
TN2112: Discusses how to use Core Audio's 3DMixer version 2.0
Performance 2004-06-14
Porting Command Line Unix Tools to Mac OS X (HTML) ()
TN2071: A general guide for Unix developers porting software to Mac OS X.
Porting 2003-09-03
SndPlayDoubleBuffer and Carbon (HTML) (PDF) ()
TN1198: Removal of the SndPlayDoubleBuffer and other APIs from the Carbon API set and Carbon solutions.
Porting 2002-06-12
The Enhanced Print Apple Event (HTML)
TN2082: Describes an enhancement to the print Apple event that gives developers more control over scripted printing.
Printing 2003-12-09
USB Printer Sharing Compatibility (HTML) (PDF)
TN1199: Describes how to make drivers compatible with USB Printer Sharing.
Printing 2000-06-01
Writing Plug-ins for Desktop Printer Utility (HTML) (PDF)
TN1172: Plug-ins for DTPU version 1.2 and later to configure different types of desktop printers.
Printing 2000-08-14
Building QuickTime Components for Mac OS X (HTML) (PDF) ()
TN2012: Discusses the changes necessary to build Carbon CFM and Mach-O QuickTime Components for Mac OS X.
QuickTime 2001-03-08
ChooseMovieClock and Video Output Components (HTML) (PDF) ()
TN2052: Discusses the ChooseMovieClock API introduced in QuickTime 6.
QuickTime 2002-05-07
Cross-Platform Communication Using the PC Compatibility Messaging System (HTML) (PDF)
TN1076: Describes Messaging System Architecture used in Apple's PC Compatibility and DOS Compatibility products
QuickTime 1996-10-01
Decompressing DV frames and accessing the pixels (HTML) (PDF) ()
TN2044: Discusses and demonstrates how to decompress DV frames and access the pixels directly.
QuickTime 2002-04-11
Fill in the size field before calling ICMGetPixelFormatInfo (HTML) (PDF) ()
TN2057: Discusses why you should always fill in the size field of the ICMPixelFormatInfo structure before calling ICMGetPixelFormatInfo.
QuickTime 2002-07-17
Full Screen changes in QuickTime 6.1 and 6.3 (HTML) (PDF) ()
TN2068: Changes made to the QuickTime Full Screen API with the release of QuickTime6.1 and QuickTime6.3
QuickTime 2003-06-19
Getting Up to Speed with QuickTime VR: Notes from the Field (HTML) (PDF)
TN1029: Understanding QuickTime VR: available tools and what a multimedia developer may be interested in.
QuickTime 2000-08-14
History & Peregrinations: The Dogcow Goes QuickTime VR (HTML) (PDF)
TN1031: History of Clarus (the DTS Dogcow mascot). How to create a QuickTime VR object movie starring the Dogcow.
QuickTime 1996-04-01
ICM Drawing non-scheduled frames with QuickTime 6 (HTML) (PDF) ()
TN2060: Changes to how the Image Compression Manager draws non-scheduled frames in QuickTime 6 on Mac OS X.
QuickTime 2002-08-21
Idling Movie Importers (HTML)
TN2111: discusses how to write an idling movie importer component
QuickTime 2004-11-12
Importing animated GIFs (HTML) (PDF) ()
TN2018: Describes how to tell if a GIF file or dataref contains more than one frame.
QuickTime 2001-04-17
Maximizing Your Media: A Brief Guide To the Latest and Greatest QuickTime Media Types (HTML) (PDF) ()
TN1087: Documents Quicktime methodolgies to ensure applications see any media types available.
QuickTime 1996-12-01
Movie Data Security (HTML) (PDF)
TN2038: Describes techniques you can use to protect data in QuickTime movies.
QuickTime 2001-12-13
QuickTime 3.0.2 (HTML) (PDF) ()
Deprecated - TN1139: Describes changes between the final release of QuickTime 3.0 and update 3.0.2.
QuickTime 1998-09-01
QuickTime 4.0.3 (HTML) (PDF) ()
TN1183: Changes between the final release of QuickTime 4 and the update release of QuickTime 4.0.3.
QuickTime 1999-10-01
QuickTime 4.1.1/4.1.2 (HTML) (PDF)
Deprecated - TN1197: Changes between QuickTime 4.1 and the update QuickTime 4.1.1 and 4.1.2.
QuickTime 2000-04-01
QuickTime For Windows: Resolving Common Installation Issues (HTML) (PDF) ()
TN1074: Details install dialog, customizing installation, and uninstalling QuickTime for Windows v 2.1.2.
QuickTime 1996-10-01
SndPlayDoubleBuffer and Carbon (HTML) (PDF) ()
TN1198: Removal of the SndPlayDoubleBuffer and other APIs from the Carbon API set and Carbon solutions.
QuickTime 2002-06-12
Supplying codec-specific options within the Standard Compression Dialog (HTML) ()
TN2081: Discusses the ImageCodec 'DITL' APIs introduced with QuickTime 6.
QuickTime 2003-05-20
Tagging Handle and Pointer Data References in QuickTime (HTML) (PDF)
TN1195: The use of data reference extensions used by QuickTime to tag handle and pointer data references.
QuickTime 2004-05-26
Thread-safe programming in QuickTime (HTML)
TN2125: Discusses how to use QuickTime from background threads for applications and component developers.
QuickTime 2004-10-08
TWAIN Data Sources for Mac OS X (HTML) ()
TN2088: Describes how to implement a TWAIN Data Source (DS) for Mac OS X
QuickTime 2003-06-19
Understanding the Differences Between Apple and Windows IMA-ADPCM Compressed Sound Files (HTML) (PDF)
TN1081: Details the differences between Apple IMA and Windows IMA (ADPCM) compressed sound files.
QuickTime 1996-11-01
Authorization for Everyone (HTML)
TN2095: Describes applications of Authorization Services beyond simple privilege requesting.
Security 2003-10-23
Uniquely Identifying a Mac OS Computer (HTML) (PDF) ()
TN1103: Describes techniques to distinguish between models of Mac OS computers.
Security 1997-12-01
The Euro Currency Symbol (HTML) (PDF) ()
TN1140: The available information about Mac OS and Mac Mac OS X Server support for the Euro currency symbol.
Text & Fonts 2000-01-01
CrashReporter (HTML)
TN2123: Describes CrashReporter and how to debug with crash logs.
Tools 2004-09-09
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (PDF) ()
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Tools 2003-02-18
GDB for MacsBug Veterans (HTML) (PDF)
TN2030: Translate your experience with MacsBug into a working knowledge of the GNU source-level debugger (GDB).
Tools 2001-10-18
Getting Started with GDB (HTML) (PDF) ()
TN2032: Explains common C, C++ and Objective-C debugging tasks using gdb, plus helpful tips and tricks.
Tools 2001-12-07
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Tools 2004-11-12
Mac OS X Debugging Magic (HTML)
TN2124: Collection of Mac OS X debugging hints and tips.
Tools 2004-12-02
Mac OS X v10.1 (HTML) (PDF)
TN2029: Updated list of APIs for Mac OS X 10.1.
Tools 2001-10-15
Mac OS X: versions 10.0.1 through 10.0.4 (HTML) (PDF) ()
TN2025: List of API differences betweem 10.0.1 trough 10.0.4
Tools 2001-07-26
Approaching the Millennium: The Mac and the Year 2000 (HTML) (PDF) ()
TN1049: Presents a lists of Q&As that primarily deal with concerns for Apple computers and the year 2000.
User Experience 1996-06-01
Guide to Creating Kiosks on Mac OS X (HTML) (PDF) ()
TN2062: Discusses techniques used in creating applications which require kiosk-like functionality on Mac OS X.
User Experience 2003-02-24
Installable Keyboard Layouts (HTML) (PDF) ()
TN2056: Explains how to define a Unicode keyboard via an XML text file.
User Experience 2002-09-27
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
User Experience 2004-03-01
How to write a JDBC Plugin (With Example) (HTML) (PDF) ()
TN2027: Describes the process of writing JDBC Adaptor plugins for WebObjects.
WebObjects 2001-07-11